YES 5.8180000000000005
H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/List.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:
↳ HASKELL
↳ LR
mainModule List
| ((intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (\vv2 ->
case | vv2 of |
| x | -> | if any (eq x) ys then x : [] else [] |
| _ | -> | [] |
) xs |
|
module Maybe where
| import qualified List import qualified Prelude
|
Lambda Reductions:
The following Lambda expression
\vv2→
case | vv2 of |
| x | → if any (eq x) ys then x : [] else [] |
| _ | → [] |
is transformed to
intersectBy0 | eq ys vv2 | =
case | vv2 of | | x | → if any (eq x) ys then x : [] else [] |
| _ | → [] |
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
mainModule List
| ((intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (intersectBy0 eq ys) xs |
|
|
intersectBy0 | eq ys vv2 | = |
case | vv2 of |
| x | -> | if any (eq x) ys then x : [] else [] |
| _ | -> | [] |
|
|
module Maybe where
| import qualified List import qualified Prelude
|
Case Reductions:
The following Case expression
case | vv2 of |
| x | → if any (eq x) ys then x : [] else [] |
| _ | → [] |
is transformed to
intersectBy00 | eq ys x | = if any (eq x) ys then x : [] else [] |
intersectBy00 | eq ys _ | = [] |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
mainModule List
| ((intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (intersectBy0 eq ys) xs |
|
|
intersectBy0 | eq ys vv2 | = | intersectBy00 eq ys vv2 |
|
|
intersectBy00 | eq ys x | = | if any (eq x) ys then x : [] else [] |
intersectBy00 | eq ys _ | = | [] |
|
module Maybe where
| import qualified List import qualified Prelude
|
If Reductions:
The following If expression
if any (eq x) ys then x : [] else []
is transformed to
intersectBy000 | x True | = x : [] |
intersectBy000 | x False | = [] |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
mainModule List
| ((intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (intersectBy0 eq ys) xs |
|
|
intersectBy0 | eq ys vv2 | = | intersectBy00 eq ys vv2 |
|
|
intersectBy00 | eq ys x | = | intersectBy000 x (any (eq x) ys) |
intersectBy00 | eq ys _ | = | [] |
|
|
intersectBy000 | x True | = | x : [] |
intersectBy000 | x False | = | [] |
|
module Maybe where
| import qualified List import qualified Prelude
|
Replaced joker patterns by fresh variables and removed binding patterns.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
mainModule List
| ((intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (intersectBy0 eq ys) xs |
|
|
intersectBy0 | eq ys vv2 | = | intersectBy00 eq ys vv2 |
|
|
intersectBy00 | eq ys x | = | intersectBy000 x (any (eq x) ys) |
intersectBy00 | eq ys vw | = | [] |
|
|
intersectBy000 | x True | = | x : [] |
intersectBy000 | x False | = | [] |
|
module Maybe where
| import qualified List import qualified Prelude
|
Cond Reductions:
The following Function with conditions
is transformed to
undefined0 | True | = undefined |
undefined1 | | = undefined0 False |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
mainModule List
| (intersect :: [Ratio Int] -> [Ratio Int] -> [Ratio Int]) |
module List where
| import qualified Maybe import qualified Prelude
|
| intersect :: Eq a => [a] -> [a] -> [a]
intersect | | = | intersectBy (==) |
|
| intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]
intersectBy | eq xs ys | = | concatMap (intersectBy0 eq ys) xs |
|
|
intersectBy0 | eq ys vv2 | = | intersectBy00 eq ys vv2 |
|
|
intersectBy00 | eq ys x | = | intersectBy000 x (any (eq x) ys) |
intersectBy00 | eq ys vw | = | [] |
|
|
intersectBy000 | x True | = | x : [] |
intersectBy000 | x False | = | [] |
|
module Maybe where
| import qualified List import qualified Prelude
|
Haskell To QDPs
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ DependencyGraphProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_psPs16(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs16(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Neg(wv200), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs16(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs10(wv24, Neg(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Zero), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
new_psPs9(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs17(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs8(wv301, wv401, wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs8(wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs(wv16, Pos(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs16(wv301, wv401, wv41, wv5)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Neg(wv280), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
new_psPs9(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs7(wv44, Succ(wv450), Succ(wv460), wv47, wv48) → new_psPs7(wv44, wv450, wv460, wv47, wv48)
new_psPs10(wv24, Pos(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
new_psPs9(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs11(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs16(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs10(wv24, Pos(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
new_psPs18(wv88, wv89, Zero, Succ(wv910), wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
new_psPs18(wv88, wv89, Succ(wv900), Zero, wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs6(wv301, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs9(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs12(wv50, Succ(wv510), Succ(wv520), wv53, wv54) → new_psPs12(wv50, wv510, wv520, wv53, wv54)
new_psPs10(wv24, Neg(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
new_psPs10(wv24, wv25, Zero, Succ(wv270), wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
new_psPs10(wv24, wv25, Succ(wv260), Zero, wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs18(wv24, wv2500, wv2500, wv2800, wv29, wv30)
new_psPs1(wv74, wv75, Succ(wv760), Succ(wv770), wv78, wv79) → new_psPs1(wv74, wv75, wv760, wv770, wv78, wv79)
new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs5(wv38, Zero, Succ(wv400), wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
new_psPs5(wv38, Succ(wv390), Zero, wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Neg(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs18(wv88, wv89, Succ(wv900), Succ(wv910), wv92, wv93) → new_psPs18(wv88, wv89, wv900, wv910, wv92, wv93)
new_psPs(wv16, Pos(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs10(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs9(wv301, wv401, wv41, wv5)
new_psPs9(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs2(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Zero), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Pos(wv200), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
new_psPs5(wv38, Succ(wv390), Succ(wv400), wv41, wv42) → new_psPs5(wv38, wv390, wv400, wv41, wv42)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs3(wv16, wv1700, wv1700, wv2000, wv21, wv22)
new_psPs15(wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs16(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs9(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs0(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs16(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs9(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs1(wv16, wv1700, wv1700, wv2000, wv21, wv22)
new_psPs16(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs1(wv74, wv75, Zero, Succ(wv770), wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
new_psPs1(wv74, wv75, Succ(wv760), Zero, wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Zero), wv401), wv41), wv5) → new_psPs0(wv30000, wv301, wv401, wv41, wv5)
new_psPs9(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs9(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs14(wv56, Succ(wv570), Succ(wv580), wv59, wv60) → new_psPs14(wv56, wv570, wv580, wv59, wv60)
new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs(wv16, wv17, Succ(wv180), Succ(wv190), wv20, wv21, wv22) → new_psPs(wv16, wv17, wv180, wv190, wv20, wv21, wv22)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Pos(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs10(wv24, wv25, Succ(wv260), Succ(wv270), wv28, wv29, wv30) → new_psPs10(wv24, wv25, wv260, wv270, wv28, wv29, wv30)
new_psPs16(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs3(wv81, wv82, Succ(wv830), Succ(wv840), wv85, wv86) → new_psPs3(wv81, wv82, wv830, wv840, wv85, wv86)
new_psPs16(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Pos(wv280), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs15(wv301, wv401, wv41, wv5)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs11(wv30000, wv301, wv401, wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Zero), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
new_psPs(wv16, wv17, Zero, Succ(wv190), wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
new_psPs(wv16, wv17, Succ(wv180), Zero, wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
new_psPs14(wv56, Zero, Succ(wv580), wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
new_psPs14(wv56, Succ(wv570), Zero, wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
new_psPs(wv16, Neg(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Zero), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
new_psPs19(wv95, wv96, Succ(wv970), Zero, wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
new_psPs19(wv95, wv96, Zero, Succ(wv980), wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs19(wv95, wv96, Succ(wv970), Succ(wv980), wv99, wv100) → new_psPs19(wv95, wv96, wv970, wv980, wv99, wv100)
new_psPs9(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs12(wv50, Succ(wv510), Zero, wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
new_psPs12(wv50, Zero, Succ(wv520), wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
new_psPs13(wv301, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs7(wv44, Zero, Succ(wv460), wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
new_psPs7(wv44, Succ(wv450), Zero, wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs19(wv24, wv2500, wv2500, wv2800, wv29, wv30)
new_psPs(wv16, Neg(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs16(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs3(wv81, wv82, Succ(wv830), Zero, wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
new_psPs3(wv81, wv82, Zero, Succ(wv840), wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 4 SCCs.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Pos(wv280), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Neg(wv280), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
new_psPs10(wv24, Pos(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
new_psPs19(wv95, wv96, Zero, Succ(wv980), wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
new_psPs19(wv95, wv96, Succ(wv970), Zero, wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
new_psPs18(wv88, wv89, Zero, Succ(wv910), wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
new_psPs18(wv88, wv89, Succ(wv900), Zero, wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
new_psPs10(wv24, Pos(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
new_psPs19(wv95, wv96, Succ(wv970), Succ(wv980), wv99, wv100) → new_psPs19(wv95, wv96, wv970, wv980, wv99, wv100)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs11(wv30000, wv301, wv401, wv41, wv5)
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Zero), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
new_psPs10(wv24, wv25, Succ(wv260), Zero, wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
new_psPs10(wv24, wv25, Zero, Succ(wv270), wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
new_psPs10(wv24, Neg(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs18(wv24, wv2500, wv2500, wv2800, wv29, wv30)
new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs19(wv24, wv2500, wv2500, wv2800, wv29, wv30)
new_psPs18(wv88, wv89, Succ(wv900), Succ(wv910), wv92, wv93) → new_psPs18(wv88, wv89, wv900, wv910, wv92, wv93)
new_psPs11(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs10(wv24, Neg(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Zero), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
new_psPs17(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Pos(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
new_psPs10(wv24, wv25, Succ(wv260), Succ(wv270), wv28, wv29, wv30) → new_psPs10(wv24, wv25, wv260, wv270, wv28, wv29, wv30)
new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs10(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Pos(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs10(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 2 > 4, 2 > 5, 2 > 6, 3 >= 7
- new_psPs4(:%(Neg(Succ(wv30000)), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs11(wv30000, wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs10(wv24, wv25, Succ(wv260), Succ(wv270), wv28, wv29, wv30) → new_psPs10(wv24, wv25, wv260, wv270, wv28, wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6, 7 >= 7
- new_psPs17(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 3 >= 2, 4 >= 3
- new_psPs11(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs18(wv88, wv89, Succ(wv900), Succ(wv910), wv92, wv93) → new_psPs18(wv88, wv89, wv900, wv910, wv92, wv93)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6
- new_psPs19(wv95, wv96, Succ(wv970), Succ(wv980), wv99, wv100) → new_psPs19(wv95, wv96, wv970, wv980, wv99, wv100)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6
- new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs18(wv24, wv2500, wv2500, wv2800, wv29, wv30)
The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3, 5 > 4, 6 >= 5, 7 >= 6
- new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs19(wv24, wv2500, wv2500, wv2800, wv29, wv30)
The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3, 5 > 4, 6 >= 5, 7 >= 6
- new_psPs10(wv24, Neg(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Pos(Zero), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Pos(Succ(wv2500)), Zero, Zero, Neg(wv280), wv29, wv30) → new_psPs17(wv24, Pos(Succ(wv2500)), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Pos(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Pos(Zero), Zero, Zero, Neg(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Pos(Zero), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Neg(Zero), Zero, Zero, Pos(Succ(wv2800)), wv29, wv30) → new_psPs17(wv24, Neg(Zero), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Pos(wv280), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs10(wv24, Neg(Succ(wv2500)), Zero, Zero, Neg(Zero), wv29, wv30) → new_psPs17(wv24, Neg(Succ(wv2500)), wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs18(wv88, wv89, Succ(wv900), Zero, wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs18(wv88, wv89, Zero, Succ(wv910), wv92, wv93) → new_psPs17(wv88, Pos(Succ(wv89)), wv92, wv93)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs19(wv95, wv96, Succ(wv970), Zero, wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs19(wv95, wv96, Zero, Succ(wv980), wv99, wv100) → new_psPs17(wv95, Neg(Succ(wv96)), wv99, wv100)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs10(wv24, wv25, Succ(wv260), Zero, wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3, 6 >= 4, 7 >= 5
- new_psPs10(wv24, wv25, Zero, Succ(wv270), wv28, wv29, wv30) → new_psPs11(wv24, wv25, wv28, wv29, wv30)
The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3, 6 >= 4, 7 >= 5
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_psPs9(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs6(wv301, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs9(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs5(wv38, Succ(wv390), Succ(wv400), wv41, wv42) → new_psPs5(wv38, wv390, wv400, wv41, wv42)
new_psPs9(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs8(wv301, wv401, wv41, wv5)
new_psPs8(wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs9(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs7(wv44, Succ(wv450), Succ(wv460), wv47, wv48) → new_psPs7(wv44, wv450, wv460, wv47, wv48)
new_psPs9(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs9(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs5(wv38, Zero, Succ(wv400), wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
new_psPs5(wv38, Succ(wv390), Zero, wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
new_psPs9(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
new_psPs7(wv44, Zero, Succ(wv460), wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
new_psPs7(wv44, Succ(wv450), Zero, wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
new_psPs9(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs9(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs9(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs9(wv301, wv401, wv41, wv5)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_psPs7(wv44, Succ(wv450), Succ(wv460), wv47, wv48) → new_psPs7(wv44, wv450, wv460, wv47, wv48)
The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4, 5 >= 5
- new_psPs6(wv301, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
The graph contains the following edges 2 >= 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs9(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs7(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 3 >= 4, 4 >= 5
- new_psPs4(:%(Pos(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3
- new_psPs8(wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Zero), wv301), wv41, wv5)
The graph contains the following edges 3 >= 2, 4 >= 3
- new_psPs5(wv38, Succ(wv390), Succ(wv400), wv41, wv42) → new_psPs5(wv38, wv390, wv400, wv41, wv42)
The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4, 5 >= 5
- new_psPs9(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 3 >= 4, 4 >= 5
- new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs5(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs8(wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 2 > 3, 3 >= 4
- new_psPs4(:%(Pos(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs9(wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 2 > 3, 3 >= 4
- new_psPs7(wv44, Succ(wv450), Zero, wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs7(wv44, Zero, Succ(wv460), wv47, wv48) → new_psPs6(Neg(Succ(wv44)), wv47, wv48)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs6(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs6(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs5(wv38, Succ(wv390), Zero, wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs5(wv38, Zero, Succ(wv400), wv41, wv42) → new_psPs6(Pos(Succ(wv38)), wv41, wv42)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs9(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs6(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs6(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs9(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs6(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Neg(wv200), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Zero), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
new_psPs0(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs1(wv16, wv1700, wv1700, wv2000, wv21, wv22)
new_psPs(wv16, wv17, Succ(wv180), Zero, wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Neg(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs(wv16, wv17, Zero, Succ(wv190), wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
new_psPs2(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Zero), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
new_psPs(wv16, Neg(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Pos(wv200), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Zero), wv401), wv41), wv5) → new_psPs0(wv30000, wv301, wv401, wv41, wv5)
new_psPs1(wv74, wv75, Succ(wv760), Zero, wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
new_psPs1(wv74, wv75, Zero, Succ(wv770), wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
new_psPs(wv16, Pos(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
new_psPs(wv16, Neg(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
new_psPs1(wv74, wv75, Succ(wv760), Succ(wv770), wv78, wv79) → new_psPs1(wv74, wv75, wv760, wv770, wv78, wv79)
new_psPs(wv16, wv17, Succ(wv180), Succ(wv190), wv20, wv21, wv22) → new_psPs(wv16, wv17, wv180, wv190, wv20, wv21, wv22)
new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs3(wv16, wv1700, wv1700, wv2000, wv21, wv22)
new_psPs3(wv81, wv82, Succ(wv830), Succ(wv840), wv85, wv86) → new_psPs3(wv81, wv82, wv830, wv840, wv85, wv86)
new_psPs(wv16, Pos(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
new_psPs3(wv81, wv82, Zero, Succ(wv840), wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
new_psPs3(wv81, wv82, Succ(wv830), Zero, wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Neg(wv4000), wv401), wv41), wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs(wv30000, wv301, wv30000, wv40000, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 2 > 4, 2 > 5, 2 > 6, 3 >= 7
- new_psPs4(:%(Pos(Succ(wv30000)), wv301), :(:%(Pos(Zero), wv401), wv41), wv5) → new_psPs0(wv30000, wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs(wv16, wv17, Succ(wv180), Succ(wv190), wv20, wv21, wv22) → new_psPs(wv16, wv17, wv180, wv190, wv20, wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6, 7 >= 7
- new_psPs2(wv30000, wv301, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 3 >= 2, 4 >= 3
- new_psPs0(wv30000, wv301, wv401, wv41, wv5) → new_psPs4(:%(Pos(Succ(wv30000)), wv301), wv41, wv5)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs3(wv81, wv82, Succ(wv830), Succ(wv840), wv85, wv86) → new_psPs3(wv81, wv82, wv830, wv840, wv85, wv86)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6
- new_psPs1(wv74, wv75, Succ(wv760), Succ(wv770), wv78, wv79) → new_psPs1(wv74, wv75, wv760, wv770, wv78, wv79)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6
- new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs3(wv16, wv1700, wv1700, wv2000, wv21, wv22)
The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3, 5 > 4, 6 >= 5, 7 >= 6
- new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs1(wv16, wv1700, wv1700, wv2000, wv21, wv22)
The graph contains the following edges 1 >= 1, 2 > 2, 2 > 3, 5 > 4, 6 >= 5, 7 >= 6
- new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Neg(wv200), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Pos(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Pos(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Pos(Zero), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Neg(Zero), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Neg(Succ(wv1700)), Zero, Zero, Pos(wv200), wv21, wv22) → new_psPs2(wv16, Neg(Succ(wv1700)), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Neg(Zero), Zero, Zero, Neg(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Pos(Succ(wv1700)), Zero, Zero, Pos(Zero), wv21, wv22) → new_psPs2(wv16, Pos(Succ(wv1700)), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs(wv16, Neg(Zero), Zero, Zero, Pos(Succ(wv2000)), wv21, wv22) → new_psPs2(wv16, Neg(Zero), wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 6 >= 3, 7 >= 4
- new_psPs3(wv81, wv82, Zero, Succ(wv840), wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs3(wv81, wv82, Succ(wv830), Zero, wv85, wv86) → new_psPs2(wv81, Neg(Succ(wv82)), wv85, wv86)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs1(wv74, wv75, Zero, Succ(wv770), wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs1(wv74, wv75, Succ(wv760), Zero, wv78, wv79) → new_psPs2(wv74, Pos(Succ(wv75)), wv78, wv79)
The graph contains the following edges 1 >= 1, 5 >= 3, 6 >= 4
- new_psPs(wv16, wv17, Zero, Succ(wv190), wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3, 6 >= 4, 7 >= 5
- new_psPs(wv16, wv17, Succ(wv180), Zero, wv20, wv21, wv22) → new_psPs0(wv16, wv17, wv20, wv21, wv22)
The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3, 6 >= 4, 7 >= 5
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_psPs16(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs16(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs15(wv301, wv401, wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs12(wv50, Succ(wv510), Succ(wv520), wv53, wv54) → new_psPs12(wv50, wv510, wv520, wv53, wv54)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs14(wv56, Zero, Succ(wv580), wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
new_psPs14(wv56, Succ(wv570), Zero, wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
new_psPs16(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs15(wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs16(wv301, wv401, wv41, wv5)
new_psPs16(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs16(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs12(wv50, Succ(wv510), Zero, wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
new_psPs12(wv50, Zero, Succ(wv520), wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
new_psPs16(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
new_psPs13(wv301, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs4(:%(Neg(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
new_psPs14(wv56, Succ(wv570), Succ(wv580), wv59, wv60) → new_psPs14(wv56, wv570, wv580, wv59, wv60)
new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
new_psPs16(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
new_psPs16(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
new_psPs16(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
new_psPs16(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_psPs4(:%(Neg(Zero), wv301), :(:%(Pos(Succ(wv40000)), wv401), wv41), wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3
- new_psPs13(wv301, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
The graph contains the following edges 2 >= 2, 3 >= 3
- new_psPs15(wv301, wv401, wv41, wv5) → new_psPs4(:%(Neg(Zero), wv301), wv41, wv5)
The graph contains the following edges 3 >= 2, 4 >= 3
- new_psPs12(wv50, Succ(wv510), Succ(wv520), wv53, wv54) → new_psPs12(wv50, wv510, wv520, wv53, wv54)
The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4, 5 >= 5
- new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs16(Pos(Succ(wv30100)), Pos(Succ(wv40100)), wv41, wv5) → new_psPs12(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 3 >= 4, 4 >= 5
- new_psPs16(Neg(Succ(wv30100)), Neg(Succ(wv40100)), wv41, wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 3 >= 4, 4 >= 5
- new_psPs14(wv56, Succ(wv570), Succ(wv580), wv59, wv60) → new_psPs14(wv56, wv570, wv580, wv59, wv60)
The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4, 5 >= 5
- new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Zero), wv401), wv41), wv5) → new_psPs16(wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 2 > 3, 3 >= 4
- new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs14(wv30100, wv30100, wv40100, wv41, wv5)
The graph contains the following edges 1 > 1, 1 > 2, 2 > 3, 2 > 4, 3 >= 5
- new_psPs4(:%(Neg(Zero), wv301), :(:%(Neg(Succ(wv40000)), wv401), wv41), wv5) → new_psPs15(wv301, wv401, wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 2 > 3, 3 >= 4
- new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Pos(wv4010)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Neg(wv4010)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Pos(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Neg(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Pos(Zero)), :(:%(Pos(Zero), Neg(Succ(wv40100))), wv41), wv5) → new_psPs13(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Pos(Succ(wv30100))), :(:%(Pos(Zero), Pos(Zero)), wv41), wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs4(:%(Neg(Zero), Neg(Succ(wv30100))), :(:%(Pos(Zero), Neg(Zero)), wv41), wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_psPs12(wv50, Zero, Succ(wv520), wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs12(wv50, Succ(wv510), Zero, wv53, wv54) → new_psPs13(Pos(Succ(wv50)), wv53, wv54)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs16(Neg(Succ(wv30100)), Pos(wv4010), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Neg(Succ(wv30100)), Neg(Zero), wv41, wv5) → new_psPs13(Neg(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Neg(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Neg(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Neg(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Pos(Zero), Neg(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Pos(Succ(wv30100)), Neg(wv4010), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Pos(Zero), Pos(Succ(wv40100)), wv41, wv5) → new_psPs13(Pos(Zero), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs16(Pos(Succ(wv30100)), Pos(Zero), wv41, wv5) → new_psPs13(Pos(Succ(wv30100)), wv41, wv5)
The graph contains the following edges 1 >= 1, 3 >= 2, 4 >= 3
- new_psPs14(wv56, Zero, Succ(wv580), wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
The graph contains the following edges 4 >= 2, 5 >= 3
- new_psPs14(wv56, Succ(wv570), Zero, wv59, wv60) → new_psPs13(Neg(Succ(wv56)), wv59, wv60)
The graph contains the following edges 4 >= 2, 5 >= 3
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
Q DP problem:
The TRS P consists of the following rules:
new_foldr(wv4, :(wv30, wv31)) → new_foldr(wv4, wv31)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_foldr(wv4, :(wv30, wv31)) → new_foldr(wv4, wv31)
The graph contains the following edges 1 >= 1, 2 > 2